The advent and widespread use of computers has resulted in a significant increase in user productivity in a variety of settings. Computers are widely used in business, at home, in government, and in many other settings. Computers allow people to accomplish tasks that were previously very time consuming and difficult. Computers have also allowed users to perform additional tasks that were not economically feasible before. The overall impact of computers has been large and positive.
Although computers have provided numerous benefits to society, they also present some challenges. One significant challenge is preventing data loss due to user error, system failure, natural disasters, etc. Many computer users, such as banks, utilities, the military, etc., have data that is irreplaceable. These users typically incorporate data loss recovery solutions into their computer systems to prevent catastrophic data loss. Home users and others can also benefit by implementing a data loss recovery solution.
The most common data loss recovery solution is to regularly back up the data. Backing up data may refer to making copies of data so that these additional copies may be used to restore the original after a data loss event. Backups are useful primarily for two purposes. The first is to restore a computer system to its previous state following a disaster (also known as disaster recovery). The second is to restore small numbers of files after they have been accidentally deleted or corrupted.
One method of backing up a computer system is to take an image of the computer system. Traditional backup programs may back up files such as documents, photos, music, spreadsheets, and the like, on a file-by-file basis. Imaging utilities may do much more. For example, imaging utilities may back up applications, the operating system, and low-level drivers and software. An imagining utility may create a block-by-block (e.g., byte-by-byte, sector-by-sector, cluster-by-cluster, and the like) duplicate of the computer system's storage volume, maintaining the identical data structure. Some imaging utilities can exclude some files and folders from the image.
If the computer system fails, it can be recovered by loading the most recent image, thereby returning the system to the state it was in at the time the image was created. For that matter, if the system becomes unstable because of installed software that won't uninstall cleanly, the image can be loaded with the stable system used a few days earlier.
Imaging software may also perform other functions beyond just backup. For example, the image can be used to clone a single system to multiple computers. The image can also be used as a convenient way to migrate a system to another computer. For example, the image may be transferred to a new computer that uses different hardware without installing the operating system from scratch.
One disadvantage of current imaging solutions is that the images have a tendency to be very large. This increases the bandwidth and network resources necessary to copy and store the images. Ultimately, however, many of the files and data included in the image are never used again when the computer system is restored, cloned, or migrated.
Accordingly, it would be desirable to provide an improved scheme for backing up data with an image. In particular, it would be desirable to minimize the resources necessary to restore, clone, or migrate the computer system.